<!--[if IE]><meta http-equiv="X-UA-Compatible" content="IE=5,IE=9" ><![endif]-->
<!DOCTYPE html>
<html>
	<head>
		<title>图形编辑器</title>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
		<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
		<link rel="stylesheet" type="text/css" href="styles/grapheditor.css">
		<script type="text/javascript">
			// Parses URL parameters. Supported parameters are:
			// - lang=xy: Specifies the language of the user interface.
			// - touch=1: Enables a touch-style user interface.
			// - storage=local: Enables HTML5 local storage.
			// - chrome=0: Chromeless mode.
			var urlParams = (function (url) {
				var result = new Object();
				var idx = url.lastIndexOf('?');

				if (idx > 0) {
					var params = url
						.substring(idx + 1)
						.split('&');

					for (var i = 0; i < params.length; i++) {
						idx = params[i].indexOf('=');

						if (idx > 0) {
							result[params[i].substring(0, idx)] = params[i].substring(idx + 1);
						}
					}
				}

				return result;
			})(window.location.href);

			// Default resources are included in grapheditor resources
			mxLoadResources = false;
		</script>
		<script type="text/javascript" src="../src/js/Blob.js"></script>
		<script type="text/javascript" src="../src/js/FileSaver.js"></script>
		<script type="text/javascript" src="../src/js/jspdf.js"></script>
		<script type="text/javascript" src="js/Init.js"></script>
		<script type="text/javascript" src="deflate/pako.min.js"></script>
		<script type="text/javascript" src="deflate/base64.js"></script>
		<script type="text/javascript" src="jscolor/jscolor.js"></script>
		<script type="text/javascript" src="sanitizer/sanitizer.min.js"></script>
		<script type="text/javascript" src="../src/js/mxClient.js"></script>
		<script type="text/javascript" src="js/EditorUi.js"></script>
		<script type="text/javascript" src="js/Editor.js"></script>
		<script type="text/javascript" src="js/Sidebar.js"></script>
		<script type="text/javascript" src="js/Graph.js"></script>
		<script type="text/javascript" src="js/Format.js"></script>
		<script type="text/javascript" src="js/Shapes.js"></script>
		<script type="text/javascript" src="js/Actions.js"></script>
		<script type="text/javascript" src="js/Menus.js"></script>
		<script type="text/javascript" src="js/Toolbar.js"></script>
		<script type="text/javascript" src="js/Dialogs.js"></script>
	</head>
	<body class="geEditor">
		<script type="text/javascript">
			// Extends EditorUi to update I/O action states based on availability of backend
			(function () {

				var editorUiInit = EditorUi.prototype.init;
				//let medit = new Editor();
				EditorUi.prototype.init = function () {
					editorUiInit.apply(this, arguments);
					//this.actions.get('export').setEnabled(false);
					//console.log(flowId)
				};

				// Adds required resources (disables loading of fallback properties, this can only
				// be used if we know that all keys are defined in the language specific file)
				mxResources.loadDefaultBundle = false;
				var bundle = mxResources.getDefaultBundle(RESOURCE_BASE, mxLanguage) || mxResources.getSpecialBundle(RESOURCE_BASE, mxLanguage);

				// Fixes possible asynchronous requests
				mxUtils.getAll([
					bundle, STYLE_PATH + '/default.xml'
				], function (xhr) {
					// Adds bundle text to resources
					mxResources.parse(xhr[0].getText());

					// Configures the default graph theme
					var themes = new Object();
					themes[Graph.prototype.defaultThemeName] = xhr[1].getDocumentElement();

					// Main
					let edit = new Editor(urlParams['chrome'] == '0', themes);
					let main = new EditorUi(edit);
					//console.log(main)
					if (urlParams['id']) {
						new mxXmlRequest('/server/flow/editBefore?id=' + urlParams['id'], '', 'get').send(res => {
								//console.log(res)
								let txt = JSON.parse(res.getText())
								//console.log(txt)
								var doc = mxUtils.parseXml(txt.data.content);
								//console.log(doc)

								let cell = edit.graph.importGraphModel(doc.documentElement);
								//console.log(cell)
								//medit.graph.isTable = true;
								//edit.graph.setSelectionCells(cell);
						});

					}

				}, function () {
					document.body.innerHTML = '<center style="margin-top:10%;">Error loading resource files. Please check browser console.</center>';
				});

				
				
			})();
		</script>
	</body>
</html>